home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 24 / AACD 24.iso / AACD / Programming / imageio.lib / dev / autodocs / imageio.autodoc
Encoding:
Text File  |  2001-01-03  |  20.5 KB  |  662 lines

  1. TABLE OF CONTENTS
  2.  
  3. imageio.library/--background--
  4. imageio.library/--history--
  5. imageio.library/_base64
  6. imageio.library/_datatype
  7. imageio.library/_gif
  8. imageio.library/_Ilbm
  9. imageio.library/_jpeg
  10. imageio.library/_memory
  11. imageio.library/_Superview
  12. imageio.library/_Tbcplus
  13. imageio.library/_uu
  14. imageio.library/AllocImageA
  15. imageio.library/FreeImage
  16. imageio.library/GetAvailWriteFormat
  17. imageio.library/GetImageAttrsA
  18. imageio.library/GetImageTypeArray
  19. imageio.library/ReadImageA
  20. imageio.library/SetImageAttrsA
  21. imageio.library/WriteImageA
  22. imageio.library/--background--                 imageio.library/--background--
  23.  
  24.    PURPOSE
  25.  To allow the reading/writing of multiple image formats.
  26.  
  27.    COPYRIGHT
  28.  The copyright in this library is owned by Paul Huxham.
  29.  
  30.    DISCLAIMER
  31.  imageio.library and its associated files are supposed to enable the
  32.  reading of different file formats. Even though every effort has been
  33.  made to make imageio.library as stable and functional as possible, I
  34.  cannot rule out the possibility that imageio.library may have bugs that
  35.  have side effects (possibly harmful) on your system.
  36.  
  37.  I hereby reject any liability or responsibility for these or any other
  38.  consequences from the use of imageio.library whatsoever. This includes,
  39.  but is not limited to, damage to your equipment, to your data, personal
  40.  injuries, financial loss or any other kinds of side effects.
  41.  
  42.  imageio.library is provided as-is. This means I do not guarantee that
  43.  imageio.library is fit for any specific purpose and I do not guarantee
  44.  any bug fixes, updates or help during error recovery.
  45.  
  46.    DISTRIBUTION
  47.  imageio.library should be distributed at no charge to the end user. It may
  48.  be included on Aminet CDs.
  49.  
  50.  The author retains all rights to the enclosed software. Payment is not
  51.  required for the use of imageio.library in public domain software.
  52.  
  53.  For ANY COMMERCIAL APPLICATION using imageio.library, contact the author
  54.  for further information concerning distribution.
  55.  
  56.    REQUIREMENTS
  57.  A minimum of Kickstart 3.0, 68020 CPU is required to use imageio.library.
  58.  
  59.    COMPLIER
  60.  imageio.library was written and compiled using CED V3.5 and SAS/C 6.58 on
  61.  an Amiga 4000/060. CyberGuard was used to detect/correct programming
  62.  errors.
  63.  
  64.    BUGS
  65.  Should you find any bugs, please report them so that they can be fixed.
  66.  Likewise any suggestions for improvment of the library should be
  67.  forwarded so that they can be addressed.
  68.  
  69.    THANKYOUS
  70.  Many thanks to
  71.    Dinh Thi Kim Tuyen
  72.      - Who makes the sky blue and the world turn. I love you, forevermore.
  73.  
  74.    Steve Quartly
  75.      - For pushing me into corners I wouldn't normally go, to teach me to
  76.        see things where I would normally give up.
  77.  
  78.    AUTHOR
  79.   You can contact the author via:
  80.     email: paulhuxham@yahoo.com
  81.     www: http://mafeking.scouts.org.au/steeplesoftware
  82.  
  83. imageio.library/--history--                       imageio.library/--history--
  84.  
  85.  V3.2
  86.   > Fixed a bug with file format descriptors. It was always reporting
  87.     incorrect file formats (eg HAM6, PALETTE etc).
  88.  
  89.  V3.1
  90.   > Added a global imagegeneric.h file and converted all defines across to
  91.     the new format. If you cant be bothered changing your source code, just
  92.     add "#define IMAGEIO_COMPAT" before you include imageio.h.
  93.  
  94.   > Fixed a bug with memory loading for loaders that have emulated memory
  95.     where the file mode was not set to MODE_OLDFILE.
  96.  
  97.  V3.0
  98.   > Added raw Ilbm memory support using a custom stream handler to read
  99.     ilbm files from a source in memory.
  100.  
  101.   > Added raw Jpeg memory support using a jpeg.library memory stream
  102.     facilities.
  103.  
  104.   > Added support for the memory stream tags. Now any file type can be
  105.     read by imageio.library if it is sourced in memory.
  106.  
  107.   > Fixed a bug where a false error code was returned from FreeImage().
  108.  
  109.  
  110.  V2.2
  111.   > Added internal Ilbm support and removed internal GIF support.
  112.  
  113.  V2.0
  114.   > Added GetImageTypeArray() to return an array of supported image
  115.     formats.
  116.  
  117.   > Added IMG_QuerySaveable tag to determine if an image is saveable
  118.     in a given format.
  119.  
  120.   > Added IMG_IsDecoded tag to determine if an image was decoded (eg UU).
  121.  
  122.   > Added IMG_DecodedName tag to determine the file name of the image
  123.     (if it was decoded ).
  124.  
  125.   > Added WriteImageA() to save an image.
  126.  
  127.   > Added the uudecoding of single part uuencoded files before passing
  128.     to an image loader. This feature can be dis/enabled by the environment
  129.     variable: imageio.library/AllowDecoding. Set to 1 for enable, 0 to
  130.     disable.
  131.  
  132.   > The temporary directory used to decode images can be set via the
  133.     environment variable: imageio.library/DecodeTempDir. Set it to the
  134.     directory to store temporary files. The default is T:.
  135.  
  136.   > Added a user preferences program so that certain image formats can be
  137.     dis/enabled by the *USER*. A use for this is to disable the internal
  138.     jpeg.library loader so that a ppc datatype can be used instead.
  139.  
  140.   > Added a new image type, IMGF_MEMORY that creates an image handle
  141.     around an RGB buffer already in memory. See examples for more
  142.     information.
  143.  
  144.   > Fixed a bug where the seek position of the file being loaded wasnt
  145.     reset to the beginning for each file type alloc.
  146.  
  147.   > Added support for the decoding of base64 encoded files.
  148.  
  149.   > Added the IMF_WriteDecodedFile tag to WriteImage() to enable the
  150.     storing of successfully decoded images.
  151.  
  152.   > Added the following tags to get information about the image handle:
  153.     IMG_ImagePlanar, IMG_ImageChunky, IMG_ImageHAM6, IMG_ImageHalfBrite,
  154.     IMG_ImageHAM8, IMG_Image24Bit, IMG_ImagePalette, IMG_ImageGrey,
  155.     IMG_ImageFormat (bulk definitions of previous tags - can be passed
  156.     directly to proof.library) and IMG_ImageDepth.
  157.  
  158.  V1.1
  159.   > Fixed a bug in datatype reading, where freeing a dt object was
  160.     attempted even if the library failed to open.
  161.  
  162.  V1.0
  163.   > Initial release.
  164.  
  165. imageio.library/_base64                               imageio.library/_base64
  166.  
  167.    NAME
  168.   base64 -- allow loading of base64 encoded files.
  169.  
  170.    FUNCTION
  171.  Allows imageio.library to read images encoded by a base64 encoder.
  172.  
  173.  Based on code (C) Copyright 1993,1994 by Carnegie Mellon University
  174.  All Rights Reserved.
  175.  
  176.  Permission to use, copy, modify, distribute, and sell this software
  177.  and its documentation for any purpose is hereby granted without
  178.  fee, provided that the above copyright notice appear in all copies
  179.  and that both that copyright notice and this permission notice
  180.  appear in supporting documentation, and that the name of Carnegie
  181.  Mellon University not be used in advertising or publicity
  182.  pertaining to distribution of the software without specific,
  183.  written prior permission.  Carnegie Mellon University makes no
  184.  representations about the suitability of this software for any
  185.  purpose.  It is provided "as is" without express or implied
  186.  warranty.
  187.  
  188.  CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO
  189.  THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
  190.  AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE
  191.  FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  192.  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
  193.  AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
  194.  OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  195.  SOFTWARE.
  196.  
  197.  V1.0
  198.   > Initial release
  199.  
  200. imageio.library/_datatype                           imageio.library/_datatype
  201.  
  202.    NAME
  203.   datatype -- allow datatype loading
  204.  
  205.    FUNCTION
  206.  Allows imageio.library to read any image supported by datatypes. This is
  207.  the default method for loading if all other methods cannot establish the
  208.  image type.
  209.  
  210.  V1.0
  211.   > Initial release
  212.  
  213. imageio.library/_gif                                     imageio.library/_gif
  214.  
  215.    NAME
  216.   gif -- allow gif loading
  217.  
  218.    FUNCTION
  219.  Allows imageio.library to read gif images.
  220.  
  221.  V1.0
  222.   > Initial release
  223.  
  224. imageio.library/_Ilbm                                   imageio.library/_Ilbm
  225.  
  226.    NAME
  227.    -- allow ilbm loading
  228.  
  229.    FUNCTION
  230.  Allows imageio.library to read ilbm images.
  231.  
  232.  Based on ViewILBM, by Olaf `Olsen' Barthel, public domain
  233.  
  234.  Postal address: Olaf Barthel
  235.                  Brabeckstr. 35
  236.                  30559 Hannover
  237.  
  238.                  Federal Republic of Germany
  239.  
  240.  e-mail address: olsen@sourcery.han.de
  241.  
  242.  V1.0
  243.   > Initial release
  244.  
  245. imageio.library/_jpeg                                   imageio.library/_jpeg
  246.  
  247.    NAME
  248.   jpeg -- allow jpeg loading using jpeg.library
  249.  
  250.    FUNCTION
  251.  Allows imageio.library to read jpeg images. A minimum of jpeg.library
  252.  version 5.0 is required for imageio.library.
  253.  
  254.  V3.0
  255.   > Fixed a bug saving greyscale images.
  256.  
  257.  V2.0
  258.   > Image handles can be saved in jpeg format.
  259.  
  260.  V1.0
  261.   > Initial release
  262.  
  263. imageio.library/_memory                               imageio.library/_memory
  264.  
  265.    NAME
  266.  memory  -- allow memory loading
  267.  
  268.    FUNCTION
  269.  Allows imageio.library to read buffers stored in memory as images.
  270.  
  271.  V1.0
  272.   > Initial release
  273.  
  274. imageio.library/_Superview                         imageio.library/_Superview
  275.  
  276.    NAME
  277.  Superview -- allow loading using superview.library
  278.  
  279.    FUNCTION
  280.  Allows imageio.library to read any image supported by superview.library.
  281.  
  282.  V1.0
  283.   > Initial release
  284.  
  285. imageio.library/_Tbcplus                             imageio.library/_Tbcplus
  286.  
  287.    NAME
  288.   Tbc -- allow TBC+ loading
  289.  
  290.    FUNCTION
  291.  Allows imageio.library to read images saved with TBCPlus.
  292.  TBCPlus © GVP Inc.
  293.  
  294.  V1.0
  295.   > Initial release
  296.  
  297. imageio.library/_uu                                       imageio.library/_uu
  298.  
  299.    NAME
  300.   uu -- allow loading of uuencoded files.
  301.  
  302.    FUNCTION
  303.  Allows imageio.library to read uuencoded images.
  304.  
  305.  V1.0
  306.   > Initial release
  307.  
  308. imageio.library/AllocImageA                       imageio.library/AllocImageA
  309.  
  310.    NAME
  311.   AllocImageA -- Allocate an image handle
  312.   AllocImage -- Varargs stub
  313.  
  314.    SYNOPSIS
  315.  err = AllocImageA( irh, taglist )
  316.                         a0   a1
  317.  
  318.  err = AllocImageA( struct ImageHandle **ih, struct TagItem *taglist )
  319.  
  320.  err = AllocImage( irh, tag1, ... )
  321.  
  322.  err = AllocImage( struct ImageHandle **ih, ULONG tag1, ... )
  323.  
  324.    FUNCTION
  325.  Allocates a new image read handle.
  326.  
  327.   Available tags:
  328.    IMG_SrcMemStream     - The source image is a segment of memory starting
  329.                           at this address.
  330.    IMG_SrcMemStreamSize - The length of the memory based segment,
  331.                           in bytes.
  332.    IMG_SrcFile          - A BPTR to an already open AmigaDOS file.
  333.    IMG_AllowEncoded     - Dis/allow the decoding of a single part
  334.                           encoded file before passing it to the image
  335.                           loaders. Overrides the users preferences.
  336.  
  337.   New for version 3.0
  338.    IMG_SrcFilename      - A pointer to a path/filename. A read lock on the
  339.                           file is held until after the image has been
  340.                           read. It is then released.
  341.  
  342.    INPUTS
  343.  ih - pointer to a struct ImageHandle pointer.
  344.  taglist - pointer to a tag list specifying the image stream source and
  345.            size.
  346.  
  347.    RESULT
  348.  err - if non NULL contains an error code. (For a complete list of error
  349.        codes, see imageio.h)
  350.  
  351.    WARNING
  352.  
  353.    BUGS
  354.  
  355.    SEE ALSO
  356.  FreeImageA()
  357.  
  358. imageio.library/FreeImage                           imageio.library/FreeImage
  359.  
  360.    NAME
  361.   FreeImage -- Free an image handle
  362.  
  363.    SYNOPSIS
  364.  err = FreeImage( ih )
  365.                   a0
  366.  
  367.  err = FreeImage( struct ImageHandle *ih )
  368.  
  369.    FUNCTION
  370.  Frees an image read handle.
  371.  
  372.    INPUTS
  373.  irh - pointer to a struct ImageHandle.
  374.  
  375.    RESULT
  376.  err - if non NULL contains an error code. (For a complete list of error
  377.        codes, see imageio.h)
  378.  
  379.    WARNING
  380.  
  381.    BUGS
  382.  
  383.    SEE ALSO
  384.  AllocImageA()
  385.  
  386. imageio.library/GetAvailWriteFormat       imageio.library/GetAvailWriteFormat
  387.  
  388.    NAME
  389.  GetAvailWriteFormat -- Access the list of writeable formats
  390.  
  391.    SYNOPSIS
  392.  format = GetAvailWriteFormat( void **handle )
  393.  
  394.  ULONG GetAvailWriteFormat( void )
  395.  
  396.    FUNCTION
  397.  Allows an application to find out what image formats are writeable.
  398.  
  399.    INPUTS
  400.  
  401.  handle - Is a pointer to a pointer, initially containing a NULL. Passed
  402.           in again across multiple calls to access all list entries.
  403.    RESULT
  404.  format - returns an image format or NULL for end of writeable formats.
  405.  
  406.    WARNING
  407.  
  408.    BUGS
  409.  
  410.    SEE ALSO
  411.  
  412. imageio.library/GetImageAttrsA                 imageio.library/GetImageAttrsA
  413.  
  414.    NAME
  415.  GetImageAttrsA -- Get attributes of an image handle
  416.  GetImageAttrs -- Varargs stub
  417.  
  418.    SYNOPSIS
  419.  result = GetImageAttrsA( ih, taglist )
  420.                           a0  a1
  421.  
  422.  ULONG GetImageAttrsA( struct ImageHandle *ih, struct TagItem *taglist )
  423.  
  424.  result = GetImageAttrs( ih, tag1, ... )
  425.  
  426.  BOOL GetImageAttrs( struct ImageHandle *ih, ULONG tag1, ... )
  427.  
  428.    FUNCTION
  429.  Retrieves information about the image handle and returns the values in
  430.  variables passed in with the taglist.
  431.  
  432.   Available tags:
  433.    IMG_Width             - Returns the width of the image (ULONG).
  434.    IMG_Height            - Returns the height of the image (ULONG).
  435.    IMG_BytesPerPixel     - Returns the number of bytes for every
  436.                            pixel (ULONG).
  437.    IMG_RowSize           - Returns the width in bytes of one pixel
  438.                            row (ULONG).
  439.    IMG_ColourSpace       - Returns the type of colour space stored in the
  440.                            image buffer (see image.h for result
  441.                            codes) (UBYTE)
  442.    IMG_ScaleNum          - Return values as though scaled with this value.
  443.    IMG_ScaleDenom        - Return values as though scaled with this value.
  444.    IMG_ImageBuffer       - Return a pointer to the image buffer. Could be
  445.                            NULL if no buffer is loaded yet.
  446.    IMG_ImageType         - Return a file format type, defined in image.h 
  447.    IMG_AsciiImageType    - Returns an ascii representation of the file
  448.                            format. (Not implemented)
  449.    IMG_QuerySaveable     - Query the library if the image can be saved
  450.                            in this format. See the write example for how to
  451.                            use this tag.
  452.    IMG_IsDecoded         - Return TRUE if this file is decoded from another
  453.                            file, otherwise FALSE.
  454.    IMG_DecodedName       - Get the filename of the picture. If decoded, get
  455.                            the images real name from the decoder.
  456.  
  457.    INPUTS
  458.  ih - pointer to a struct ImageHandle.
  459.  taglist - pointer to a tag list, containing the information to retrieve.
  460.  
  461.    RESULT
  462.  err - returns IMGERR_NONE if successful, otherwise an error code. See
  463.        imageio.h for error code definitions.
  464.  
  465.    WARNING
  466.  
  467.    BUGS
  468.  
  469.    EXAMPLE
  470.  
  471.  err = GetImageAttrs( ih, IMG_Width, &x, IMG_Height, &y, TAG_DONE );
  472.  
  473.    SEE ALSO
  474.  
  475. imageio.library/GetImageTypeArray           imageio.library/GetImageTypeArray
  476.  
  477.    NAME
  478.  GetImageTypeArray -- Get the image type array
  479.  
  480.    SYNOPSIS
  481.  result = GetImageTypeArray( void )
  482.  
  483.  ULONG GetImageTypeArray( void )
  484.  
  485.    FUNCTION
  486.  Gets a READ ONLY pointer to the image type array. Using this array, you
  487.  can determine if a particular image format supports certain facilities.
  488.  
  489.    INPUTS
  490.  
  491.    RESULT
  492.  err - returns a pointer to the image type array if successful,
  493.        otherwise NULL.
  494.  
  495.    WARNING
  496.  
  497.    BUGS
  498.  
  499.    SEE ALSO
  500.  
  501. imageio.library/ReadImageA                         imageio.library/ReadImageA
  502.  
  503.    NAME
  504.   ReadImageA -- Read an image stream
  505.   ReadImage -- Varargs stub
  506.  
  507.    SYNOPSIS
  508.  err = ReadImageA( ih, taglist )
  509.                    a0   a1
  510.  
  511.  err = ReadImageA( struct ImageHandle *ih, struct TagItem *taglist )
  512.  
  513.  err = ReadImage( ih, tag1, ... )
  514.  
  515.  err = ReadImage( struct ImageHandle **ih, ULONG tag1, ... )
  516.  
  517.    FUNCTION
  518.  Reads an image stream into memory.
  519.  
  520.   Available tags:
  521.    IMG_StorageHook      - Calls a user specified function to store an
  522.                           imag scanline (see image.h). DO NOT pass a hook
  523.                           structure pointer here. Put a pointer to your
  524.                           function (see examples). Returning a non NULL
  525.                           value from the hook will abort a load in
  526.                           progress.
  527.    IMG_StorageUserData  - User data passed to the hook function (void *).
  528.    IMG_ProgressHook     - Calls a user specified function for the purpose
  529.                           of displaying a progress indicator (see
  530.                           imageio.h). DO NOT pass a hook structure pointer
  531.                           here. Put a pointer to your function (see
  532.                           examples). Returning a non NULL value from the
  533.                           hook will abort a load in progress.
  534.    IMG_ProgressUserData - User data passed to the hook function (void *).
  535.    IMG_RenderHook       - Calls a user specified function to render each
  536.                           loaded scanline (see imageio.h). DO NOT pass a
  537.                           hook structure pointer here. Put a pointer to
  538.                           your function (see examples). Returning a non
  539.                           NULL value from the hook will abort a load in
  540.                           progress.
  541.    IMG_RenderUserData   - User data passed to the hook function (void *).
  542.    IMG_ScaleNum         - Scale decompressed data with this numerator.
  543.    IMG_ScaleDenom       - Scale decompressed data with this denominator.
  544.    IMG_JPEG_DCTMethod   - The DCT processing method to use for loading
  545.                           a jpeg image. Defaults to JPEG_DCT_IFAST.
  546.    IMR_ImageBuffer      - Specifies a pointer to a UBYTE that takes the
  547.                           pointer to the image buffer. You need to know the
  548.                           colourspace the image is using to actually do
  549.                           anything with this pointer.
  550.    IMG_RGBBuffer        - Create an imagehandle from this RGB buffer
  551.                           already in memory. When freeing the imagehandle,
  552.                           the buffer is not freed.
  553.    IMG_MakeReturnedBuffer - Specify the format you want the loaded
  554.                           buffer as. (NOT IMPLEMENTED)
  555.  
  556.    INPUTS
  557.  ih - pointer to a struct ImageHandle.
  558.  taglist - pointer to a tag list.
  559.  
  560.    RESULT
  561.  err - if non NULL contains an error code. (For a complete list of error
  562.        codes, see imageio.h)
  563.  
  564.    WARNING
  565.  
  566.    BUGS
  567.  
  568.    SEE ALSO
  569.  AllocImageA(), FreeImageA()
  570.  
  571. imageio.library/SetImageAttrsA                 imageio.library/SetImageAttrsA
  572.  
  573.    NAME
  574.  SetImageAttrsA -- Set attributes of an image
  575.  SetImageAttrs -- Varargs stub
  576.  
  577.    SYNOPSIS
  578.  result = SetImageAttrsA( ih, taglist )
  579.                           a0  a1
  580.  
  581.  ULONG SetImageAttrsA( struct ImageHandle *ih, struct TagItem *taglist )
  582.  
  583.  result = SetImageAttrs( ih, tag1, ... )
  584.  
  585.  ULONG SetImageAttrs( struct ImageHandle *ih, ULONG tag1, ... )
  586.  
  587.    FUNCTION
  588.  Sets specified information from the taglist into the image.
  589.  
  590.    INPUTS
  591.  ih - pointer to a struct ImageHandle.
  592.  taglist - pointer to a tag list, containing the information to set.
  593.  
  594.    PFN_ProofHeight - Specifies the Height in pixels of the Proof
  595.                      image. Values range from 0 to 255. (UBYTE)
  596.  
  597.    RESULT
  598.  err - returns IMGERR_NONE if successful, otherwise an error code. See
  599.        imageio.h for error code definitions.
  600.  
  601.    WARNING
  602.  
  603.    BUGS
  604.  
  605.    SEE ALSO
  606.  
  607. imageio.library/WriteImageA                       imageio.library/WriteImageA
  608.  
  609.    NAME
  610.   WriteImageA -- Write an image stream
  611.   WriteImage -- Varargs stub
  612.  
  613.    SYNOPSIS
  614.  err = WriteImageA( ih, taglist )
  615.                     a0   a1
  616.  
  617.  ULONG WriteImageA( struct ImageHandle *ih, struct TagItem *taglist )
  618.  
  619.  err = WriteImage( ih, tag1, ... )
  620.  
  621.  ULONG WriteImage( struct ImageHandle **ih, ULONG tag1, ... )
  622.  
  623.    FUNCTION
  624.  Writes an image stream in memory to a file.
  625.  
  626.   Available tags:
  627.    IMG_ProgressHook     - Calls a user specified function for the purpose
  628.                           of displaying a progress indicator (see
  629.                           imageio.h). DO NOT pass a hook structure pointer
  630.                           here. Put a pointer to your function (see
  631.                           examples). Returning a non NULL value from the
  632.                           hook will abort a write in progress.
  633.    IMG_ProgressUserData - User data passed to the hook function (void *).
  634.  
  635.    IMG_JPEG_DCTMethod   - The DCT processing method to use for saving a
  636.                           jpeg image. Defaults to JPEG_DCT_IFAST.
  637.    IMG_JPEG_Quality     - When saving, use this jpeg quality. Defaults
  638.                           to 85.
  639.    IMG_JPEG_Progressive - Save the jpeg in progressive format. Defaults
  640.                           to FALSE.
  641.    IMG_WriteDecodedFile - Store the image into the pathfile passed in,
  642.                           ONLY if the file was decoded (char *). Will
  643.                           NOT overwrite existing files. This IGNORES any
  644.                           scaled loading settings and stores the
  645.                           original file!
  646.  
  647.    INPUTS
  648.  ih - pointer to a struct ImageHandle.
  649.  taglist - pointer to a tag list.
  650.  
  651.    RESULT
  652.  err - if non NULL contains an error code. (For a complete list of error
  653.        codes, see imageio.h)
  654.  
  655.    WARNING
  656.  
  657.    BUGS
  658.  
  659.    SEE ALSO
  660.  AllocImageA(), FreeImageA(), ReadImageA()
  661.  
  662.